import Vue from 'vue'
import App from './App'
import router from './router/index'
import store from './store/index'
import 'amfe-flexible'
import Vant from 'vant'


import 'vant/lib/index.css'
import './utils/tools'
import axios from 'axios'
import $ from 'jquery'
import Fastclick from 'fastclick'
//引入vconsole 可以在移动端查看日志
// import Vconsole from 'vconsole';
// let vConsole = new Vconsole();
// export default vConsole

Fastclick.attach(document.body)
window.jQuery = $;
window.$ = $;

Vue.prototype.$http = axios
Vue.use(Vant)


// 发起请求（获取accessToken）
let getAccessToken = function (appId) {
  //this重新指向
  let _this = this
  var params = "{\"appId\":\"" + appId + "\"}";
  window.auth.getAccessToken(params)
  //回调函数（APP调用，返回accessToken）
  window.getAccessTokenCallback = function (params) {
    params = $.parseJSON(params); //jsonStr 转jsonObject
    if (params.success) {
      let accessToken = params.data.accessToken;
      //调起获取用户授权信息接口
      let userInfoParams =
        "{\"accessToken\":\"" + accessToken + "\",\"appId\":\"" + appId + "\"}";
      //调起获取用户授权信息，接口（首次展示用户授权界面）
      console.log("已获取accesstoken");
      getUserInfoByToken(userInfoParams);
    } else {
      alert("获取accessToken失败，原因：" + params.msg);
    }
  }
  //调起获取用户授权信息接口（首次展示用户授权界面）
  function getUserInfoByToken(params) {
    window.auth.getUserInfoByToken(params);
  }
  window.getUserInfoByTokenCallback = function (params) {
    params = $.parseJSON(params); //jsonStr 转jsonObject
    if (params.success) {
      var data = params.data; //用户信息密文
      localStorage.setItem("data", data)
      console.log("已转密文");
      _this.getUser(data)
    } else {
      alert("获取用户授权信息失败，原因：" + params.msg);
    }
  }
}
// 将token方法 添加到Vue原型 后续可以通过this.$token进行调用
Vue.prototype.$token = getAccessToken;




if (process.env.NODE_ENV !== 'production') {
  let vConsole = require('vconsole')
  new vConsole()
}

Vue.config.productionTip = false

new Vue({
  el: '#app',
  store,
  router,
  components: { App },
  template: '<App/>'
})